Haste v19 - Underwater Refresh (development build)

Changes
- Added underwater screen-space sun shafts. Ray sample count scales by preset; Hastefull uses 4 samples.
- Added animated, world-locked caustic light patterns to visible submerged geometry. Caustic detail scales by preset.
- Added procedural rain-drop impact rings and tiny glints on still water surfaces for Medium, High, Max and Ethereal.
- Added settings under Water & Reflections for underwater rays, underwater caustics, and rain splashes.
- No new render targets or full-screen passes were added.

Performance notes
- The underwater shaft and caustic effects run only when isEyeInWater indicates water.
- Hastefull and Low use reduced sample/detail settings and keep water-surface rain splashes off by default.
- Rain splashes are procedural surface shading; they do not spawn new Minecraft particles.

Compatibility / verification
- Built from the v18 Biomes O' Plenty compatibility ZIP.
- Source-level structural checks and ZIP integrity were checked. This package has not been compiled or launched in a live Minecraft + Sodium + Iris instance in this environment.
